package com.base.common.edu.entity;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.HashSet;
import java.util.Set;

/**
 * @Author Maple.Chen
 * @Description 教职工定义实体
 * @Date 14:24 2021/1/4
 **/
@Data
@ApiModel(description = "教职工信息实体")
@JsonIgnoreProperties(value = {"handler"})
public class Staff implements Serializable {

    private static final long serialVersionUID = -5841602369645914553L;
    @ApiModelProperty( value = "用户姓名")
    private String staffId;
    @ApiModelProperty( value = "教职工编号:用于登录")
    private String tno;
    @ApiModelProperty( value = "教职工姓名")
    private String name;
    @ApiModelProperty( value = "密码:用于登录")
    private String passwd;
    @ApiModelProperty( value = "教职工性别")
    private Integer sex;
    @ApiModelProperty( value = "教职工身份证号")
    private String idCard;
    // select p.province||c. city||a.area 省市区 from hat_area a inner join (hat_city c inner join hat_province p on c.father = p.provinceid) on a.father = c.cityid and a.areaID = 'idcard num six prefix';
    @ApiModelProperty( value = "现住址：省份")
    private String provinceId;
    @ApiModelProperty( value = "现住址：城市")
    private String cityId;
    @ApiModelProperty( value = "现住址：区")
    private String areaId;
    @ApiModelProperty( value = "现住址：街道信息")
    private String streetInfo;
    @ApiModelProperty( value = "电话号码")
    private String mobile;
    @ApiModelProperty( value = "邮箱号码")
    private String email;
    @ApiModelProperty( value = "用户状态（-1：失效[Invalid]，0：未激活[Inactive]，1：已激活[Activated]）==>数据库true=1/false=0")
    private Integer activateStatus;
    @ApiModelProperty( value = "所属部门")
    private Department deptObject;
    @ApiModelProperty( value = "头像图路径")
    private String imgPath;
    @ApiModelProperty( value = "角色的映射集合")
    private Set<SysRole> sysRoles = new HashSet<SysRole>();
    @ApiModelProperty( value = "角色组映射集合")
    private Set<SysGroup> sysGroups = new HashSet<SysGroup>();
    @ApiModelProperty( value = "对应在授课程映射集合")
    private Set<ValidCourse> validCourses = new HashSet<ValidCourse>();
    @ApiModelProperty( value = "教职工SFTP账户")
    private SftpAccount sftpAccount;

}
